﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SJ.Platform.EFCore.Model.FlowManager
{
    [Table("flow_node")]
    [Description("流程节点")]
    public class FlowNode
    {
        /// <summary>
        /// 主键
        /// </summary>
        public string? Id { get; set; }

        /// <summary>
        /// 流程ＩＤ
        /// </summary>
        public string? Fid { get; set; }

        /// <summary>
        /// 节点名称
        /// </summary>
        public string? NodeName { get; set; }

        /// <summary>
        /// 审批角色ID
        /// </summary>
        public string? ApproveRoleId { get; set; }

        /// <summary>
        /// 审批角色名称
        /// </summary>
        public string? ApproveRoleName { get; set; }

        /// <summary>
        /// 审批类型（1=专人审批，2=角色审批，3=直属上级审批，4=其他）
        /// </summary>
        public int? ApproveType { get; set; }

        /// <summary>
        /// 通过条件（0=所有人通过才算审批完成，1=有一人审批通过即可）
        /// </summary>
        public int? PassCondition { get; set; }

        /// <summary>
        /// 前一个节点ID
        /// </summary>
        public string? PrevNodeId { get; set; }

        /// <summary>
        /// 前一个节点名称
        /// </summary>
        public string? PrevNodeName { get; set; }

        /// <summary>
        /// 节点顺序
        /// </summary>
        public int? Sort { get; set; }

        /// <summary>
        /// 添加时间
        /// </summary>
        public DateTime? AddTime { get; set; }

        /// <summary>
        /// 添加人
        /// </summary>
        public string? AddUserId { get; set; }

        /// <summary>
        /// 最后修改时间
        /// </summary>
        public DateTime? EditTime { get; set; }

        /// <summary>
        /// 最后修改人
        /// </summary>
        public string? EditUserId { get; set; }
    }
}
